import { Define, EntityObjectFactory } from 'tiny-entity2';
const EntityObjectType = EntityObjectFactory.GetEntityObjectType(process.env.dataBaseType || 'mysql');
@Define.Table({ TableName: "menu" })
export class Menu extends EntityObjectType<Menu>{
    @Define.PrimaryKey()
    id: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    name: string;

    @Define.Column({
        DataType: Define.DataType.INT
    })
    index: number;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    icon: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    orgId: string;

    @Define.Column({
        DataType: Define.DataType.BIGINT
    })
    createTime: number;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    pageId: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    viewId: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    url: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    parentId: string;

    @Define.Column({
        DataType: Define.DataType.BOOL
    })
    isDelete: boolean;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    pageName: string;

    @Define.Column({
        DataType: Define.DataType.VARCHAR
    })
    workflowId: string;

    @Define.Column({
        DataType: Define.DataType.BOOL
    })
    isHide: boolean;
}